// index.js
const app = getApp()
/**
 * 定义模型数据、处理事件、页面的生命周期等
 */
Page({
  data: {
    page: 1,
    name: '春峰',
    isShow: false,
    isMan: true,
    score: 95,
    address: {
      province: '黑龙江',
      city: '哈尔滨'
    },
    goodGirls: [
      {id:1001, name: '王语嫣',city: '大理'},
      {id:1002, name: '阿朱',city: '北京'},
      {id:1003, name: '周芷若',city: '峨眉山'},
      {id:1004, name: '赵敏',city: '大都'}
    ]
  },
  // pages中没有methods这一级
  changeName() {
    // console.log('---changeName---')
    /**
     * 该方式借鉴 react （class组件）
     * 
    如果更改了模型，视图也要跟着变，必须使用setData方法，这是规定
    如果你更改了模型，视图不需要变，这个时候就直接通过 this.data 去更改，千万不要调用setData去更改，否则会有性能问题
     */
    this.setData({
      name: '马永康',
      isShow: !this.data.isShow
    },() => {
      // 这个回调是当我们视图渲染完毕之后执行
      console.log('---视图渲染完毕了---')
    })

    // this.data.name = '马永康'
    this.data.page++

    console.log('---name---',this.data.name,this.data.page)
    console.log('---window---document',window,document)
  },

  /**
   * 生命周期函数--监听页面加载（created）
   */
  onLoad(options) {
    console.log('---index---onLoad---')
  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    console.log('---index---onShow---')
  },
  /**
   * 生命周期函数--监听页面初次渲染完成（mounted）
   */
  onReady() {
    console.log('---index---onReady---')
  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {
    console.log('---index---onHide---')
  },
  /**
   * 生命周期函数--监听页面卸载（destory）
   */
  onUnload() {
    console.log('---index---onUnload---')
  },
  goToSecond() {
    // 编程式导航，navigateTo 类似于 push
    wx.navigateTo({
      // url前面必须要有/
      url: '/pages/second/second',
    })
  }
})
